-
Notifications
You must be signed in to change notification settings - Fork 382
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[incubator-kie-issues-1401] Fix build kogito-examples.build-and-test in kogito nightly.native folder #1987
[incubator-kie-issues-1401] Fix build kogito-examples.build-and-test in kogito nightly.native folder #1987
Conversation
…in kogito nightly.native folder - Completely disabled dmn-tracing-quarkus and trusty-tracing-quarkus-devservices
def pom = readMavenPom(file: 'pom.xml'); | ||
def oldKogitoVersion = pom.version | ||
if (oldKogitoVersion == null) { | ||
echo "pom version is null. Using parent pom version" | ||
oldKogitoVersion = pom.parent.version | ||
} |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I noticed that oldKogitoVersion
was null
in past logs because readMavenPom
cannot resolve the parent version (I cannot find a reason from logs). But locally confirmed that pom.parent.version
returns the expected version.
// special case for serverless-workflow-examples-parent | ||
maven.mvnVersionsSet( | ||
getMavenCommand('serverless-workflow-examples/serverless-workflow-examples-parent').withSettingsXmlFile(MAVEN_SETTINGS_FILE), | ||
getKogitoVersion(), | ||
true, | ||
false | ||
) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
serverless-workflow-examples project versions were not updated by mvnVersionsUpdateParentAndChildModules
, because serverless-workflow-examples-parent
itself was not updated. So I explicitly call mvnVersionsSet
. The project directory is hard-coded, but I couldn't find another approach. Let me know if there is a better way.
def status = sh(script: "grep -ir '${oldKogitoVersion}' --include='pom.xml'", returnStatus: true) | ||
def status = sh(script: "grep -ir '>${oldKogitoVersion}<' --include='pom.xml'", returnStatus: true) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Previously 10.0.999-SNAPSHOT
may match when oldKogitoVersion
is 999-SNAPSHOT
. Added >
<
for precision.
error "Old Kogito version ${oldKogitoVersion} is still present into the project... Please review it..." | ||
// some orphaned projects may still have the old version. not an error | ||
echo "Old Kogito version ${oldKogitoVersion} is still present into the project... Please review it..." |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
we may still have old versions because some projects are orphaned (not associated by <modules>
), so mvn setVersion doesn't affect. It's not an error.
15:31:22 + grep -ir '>999-SNAPSHOT<' --include=pom.xml
15:31:22 kogito-quarkus-examples/dmn-tracing-quarkus/pom.xml: <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
15:31:22 kogito-quarkus-examples/dmn-tracing-quarkus/pom.xml: <version.org.kie.kogito>999-SNAPSHOT</version.org.kie.kogito>
15:31:22 kogito-quarkus-examples/trusty-tracing-quarkus-devservices/pom.xml: <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
15:31:22 kogito-quarkus-examples/trusty-tracing-quarkus-devservices/pom.xml: <version.org.kie.kogito>999-SNAPSHOT</version.org.kie.kogito>
15:31:22 serverless-workflow-examples/serverless-workflow-github-showcase/pom.xml: <version>999-SNAPSHOT</version>
15:31:22 serverless-workflow-examples/serverless-workflow-openvino-quarkus/pom.xml: <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
15:31:22 serverless-workflow-examples/serverless-workflow-subflows-event/pom.xml: <version>999-SNAPSHOT</version>
15:31:22 serverless-workflow-examples/serverless-workflow-subflows-event/pom.xml: <kogito.bom.version>999-SNAPSHOT</kogito.bom.version>
15:31:22 serverless-workflow-examples/serverless-workflow-subflows-event/pom.xml: <version.org.kie.kogito>999-SNAPSHOT</version.org.kie.kogito>
Btw, previously, oldKogitoVersion
was null, so it didn't hit the error.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, Thanks @tkobayas
I suspect this problem might come from fact that the If the examples are built with "any" profile being active (either using -P or by any other activation means), this default profile is not activated at all, so the parent module falls out of the reactor. |
Hi @pefernan , What do you think about @jstastny-cz 's point? : #1987 (comment) (I see that it was introduced by #1852 ) I think this is not rushed for v10 release, but if you think this can be improved, please file a GH issue. |
PR job Reproducerbuild-chain build full_downstream -f 'https://raw.githubusercontent.com/${AUTHOR:apache}/incubator-kie-kogito-pipelines/${BRANCH:main}/.ci/buildchain-config-pr-cdb.yaml' -o 'bc' -p apache/incubator-kie-kogito-examples -u #1987 --skipParallelCheckout NOTE: To install the build-chain tool, please refer to https://github.com/kiegroup/github-action-build-chain#local-execution Please look here: https://ci-builds.apache.org/job/KIE/job/kogito/job/main/job/pullrequest_jobs/job/kogito-examples-pr/job/PR-1987/1/display/redirect Test results:
Those are the test failures: org.acme.AcmeExchangeResourceIT.unauthorizedTestjava.lang.RuntimeException: io.quarkus.builder.BuildException: Build failure: Build failed due to errors[error]: Build step io.quarkus.oidc.deployment.devservices.keycloak.KeycloakDevServicesProcessor#startKeycloakContainer threw an exception: java.lang.RuntimeException: org.testcontainers.containers.ContainerLaunchException: Container startup failed for image quay.io/keycloak/keycloak:23.0.7 at io.quarkus.oidc.deployment.devservices.keycloak.KeycloakDevServicesProcessor.startKeycloakContainer(KeycloakDevServicesProcessor.java:249) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:77) at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.base/java.lang.reflect.Method.invoke(Method.java:568) at io.quarkus.deployment.ExtensionLoader$3.execute(ExtensionLoader.java:849) at io.quarkus.builder.BuildContext.run(BuildContext.java:256) at org.jboss.threads.ContextHandler$1.runWith(ContextHandler.java:18) at org.jboss.threads.EnhancedQueueExecutor$Task.run(EnhancedQueueExecutor.java:2513) at org.jboss.threads.EnhancedQueueExecutor$ThreadBody.run(EnhancedQueueExecutor.java:1538) at java.base/java.lang.Thread.run(Thread.java:840) at org.jboss.threads.JBossThread.run(JBossThread.java:501) Caused by: org.testcontainers.containers.ContainerLaunchException: Container startup failed for image quay.io/keycloak/keycloak:23.0.7 at org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:359) at org.testcontainers.containers.GenericContainer.start(GenericContainer.java:330) at io.quarkus.oidc.deployment.devservices.keycloak.KeycloakDevServicesProcessor.lambda$startContainer$4(KeycloakDevServicesProcessor.java:376) at java.base/java.util.Optional.orElseGet(Optional.java:364) at io.quarkus.oidc.deployment.devservices.keycloak.KeycloakDevServicesProcessor.startContainer(KeycloakDevServicesProcessor.java:401) at io.quarkus.oidc.deployment.devservices.keycloak.KeycloakDevServicesProcessor.startKeycloakContainer(KeycloakDevServicesProcessor.java:197) ... 11 more Caused by: org.rnorth.ducttape.RetryCountExceededException: Retry limit hit with exception at org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:88) at org.testcontainers.containers.GenericContainer.doStart(GenericContainer.java:344) ... 16 more Caused by: org.testcontainers.containers.ContainerLaunchException: Could not create/start container at org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:563) at org.testcontainers.containers.GenericContainer.lambda$doStart$0(GenericContainer.java:354) at org.rnorth.ducttape.unreliables.Unreliables.retryUntilSuccess(Unreliables.java:81) ... 17 more Caused by: org.testcontainers.containers.ContainerLaunchException: Timed out waiting for log output matching '.*Keycloak.*started.*' at org.testcontainers.containers.wait.strategy.LogMessageWaitStrategy.waitUntilReady(LogMessageWaitStrategy.java:47) at org.testcontainers.containers.wait.strategy.AbstractWaitStrategy.waitUntilReady(AbstractWaitStrategy.java:52) at org.testcontainers.containers.GenericContainer.waitUntilContainerStarted(GenericContainer.java:909) at org.testcontainers.containers.GenericContainer.tryStart(GenericContainer.java:500) ... 19 more |
@tkobayas oh. I don't remember the reason why, but the swf examples had no parent at the time and we needed that IDK if removing it and setting |
jenkins/pr-head: This error is being seen these days. Not related to this PR.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Thanks!
The setup-branch change might be affected by the dev ML discussion "[DISCUSS] Kogito Examples and Properties". But at the moment, it's safe to merge, I think. |
…in kogito nightly.native folder (apache#1987) * [incubator-kie-issues-1401] Fix build kogito-examples.build-and-test in kogito nightly.native folder - Completely disabled dmn-tracing-quarkus and trusty-tracing-quarkus-devservices
Issue:
#1986 is a fix for 10.0.x branch, but this PR is for main branch to be a fundamental fix:
dmn-tracing-quarkus
andtrusty-tracing-quarkus-devservices